package cn.edu.ctgu.geo.constants;

/**
 * 北斗网格位置码标准定义常量
 */
public class GridData {
    // 定义gridSizes1数组
    public static final double[][] gridSizes1 = {
        {1, 1},
        {21600, 14400},
        {1800, 1800},
        {900, 600},
        {60, 60},
        {4, 4},
        {2, 2},
        {0.25, 0.25},
        {0.03125, 0.03125},
        {0.00390625, 0.00390625},
        {0.00048828125, 0.00048828125}
    };

    // 定义gridCount1数组
    public static final int[][] gridCount1 = {
        {1, 1},
        {60, 22},
        {12, 8},
        {2, 3},
        {15, 10},
        {15, 15},
        {2, 2},
        {8, 8},
        {8, 8},
        {8, 8},
        {8, 8}
    };

    // 定义gridCountPole数组
    public static final int[][] gridCountPole = {
        {1, 1},
        {1, 1},
        {4, 4},
        {2, 2},
        {15, 15},
        {15, 15},
        {2, 2},
        {8, 8},
        {8, 8},
        {8, 8},
        {8, 8}
    };

    // 定义codeLengthAtLevel数组
    public static final int[] codeLengthAtLevel = {1, 4, 6, 7, 9, 11, 12, 14, 16, 18, 20};

    // 定义elevationParams数组
    public static final int[][] elevationParams = {
        {1, 2},
        {6, 10},
        {3, 8},
        {1, 2},
        {4, 16},
        {4, 16},
        {1, 2},
        {3, 8},
        {3, 8},
        {3, 8},
        {3, 8}
    };

    // 获取gridSizes1数组
    public static double[][] getGridSizes1() {
        return gridSizes1;
    }

    // 获取gridCount1数组
    public static int[][] getGridCount1() {
        return gridCount1;
    }

    // 获取gridCountPole数组
    public static int[][] getGridCountPole() {
        return gridCountPole;
    }

    // 获取codeLengthAtLevel数组
    public static int[] getCodeLengthAtLevel() {
        return codeLengthAtLevel;
    }

    // 获取elevationParams数组
    public static int[][] getElevationParams() {
        return elevationParams;
    }
}
